Risolvere i problemi nelle soluzioni Office

您所在的位置:网站首页 come aprire un documento pages aggiornato gennaio Risolvere i problemi nelle soluzioni Office

Risolvere i problemi nelle soluzioni Office

2023-03-25 02:33| 来源: 网络整理| 查看: 265

Risolvere i problemi nelle soluzioni Office Articolo 03/21/2023 13 minuti per la lettura

Si applica a: Visual Studio

Questo articolo illustra come risolvere i problemi che possono verificarsi quando si eseguono attività diverse durante lo sviluppo di soluzioni Office in Visual Studio。

Problemi durante la creazione, l'aggiornamento e l'apertura di progetti

Quando si creano o si aprono progetti di Office, potrebbero verificarsi i problemi seguenti.

Problema 1: Il progetto non può essere creato

Se si verifica un errore quando si tenta di creare o aprire un progetto di Office, ma Visual Studio non dispone di informazioni sufficienti per determinare la causa, provare a chiudere il progetto, uscire da Visual Studio e ricominciare.

Se si sta tentando di creare un progetto a livello di documento, è possibile che un altro documento con lo stesso nome del documento nel nuovo progetto sia già aperto in Excel o Word. Assicurarsi che tutte le altre istanze di Excel o Word siano chiuse.

Problema 2: Le proprietà dei controlli vengono perse quando si crea un nuovo progetto basato su un documento da un progetto esistente

Se si crea un nuovo progetto di Office basato su un documento di un progetto esistente, le proprietà per tutti i controlli presenti nel documento non vengono copiate nel nuovo progetto. Reimpostare manualmente le proprietà per tutti i controlli preesistenti. In alternativa, è possibile mantenere le proprietà del controllo creando una copia del progetto esistente anziché creare un nuovo progetto oppure caricando il progetto esistente nella nuova soluzione (nella finestra di progettazione) e copiando e incollando i controlli dal documento esistente al nuovo documento.

Problema 3: Errori durante la creazione di un progetto di cartella di lavoro di Excel basato su una cartella di lavoro esistente

Se si crea un nuovo progetto di cartella di lavoro di Excel basato su una cartella di lavoro esistente, è possibile che venga visualizzata una combinazione degli errori seguenti.

Da Excel: "Avviso sulla privacy: questo documento contiene macro, controlli ActiveX, informazioni sul pacchetto di espansione XML o componenti Web. Queste possono includere informazioni personali che non possono essere rimosse da Document Inspector." Da Visual Studio: "Impossibile caricare correttamente la finestra di progettazione".

Questi errori possono verificarsi quando si tenta di creare un progetto basato su una cartella di lavoro in cui le informazioni personali sono state rimosse tramite Controllo documento. Per evitare questo PROBLEMA, seguire questa procedura prima di creare il progetto:

Aprire la cartella di lavoro in Excel. In Excel aprire il Centro protezione. Nella scheda Opzioni privacy deselezionare la casella di controllo Rimuovi informazioni personali dalle proprietà del file al salvataggio . Salvare la cartella di lavoro e chiudere Excel. Problema 4: Non è possibile aprire un progetto dopo la migrazione

Dopo la migrazione di una soluzione Office a Microsoft Office 2010, il progetto non può essere aperto in un computer di sviluppo in cui è installato solo Microsoft Office System 2007. È possibile che vengano visualizzati gli errori seguenti.

"Uno o più progetti nella soluzione non sono stati caricati correttamente. Per informazioni dettagliate, vedere la finestra di output." "Impossibile creare il progetto perché l'applicazione associata a questo tipo di progetto non è installata nel computer. È necessario installare l'applicazione di Microsoft Office associata a questo tipo di progetto."

Per risolvere questo problema, modificare il file con estensione vbproj o csproj . Per un progetto Word, sostituire HostPackage="{763FDC83-64E5-4651-AC9B-28C4FEB985A1}" con HostPackage="{6CE98B71-D55A-4305-87A8-0D6E368D9600}". Per un progetto Excel, sostituire HostPackage="{B284B16A-C42C-4438-BDCD-B72F4AC43CFB}" con HostPackage="{825100CF-0BA7-47EA-A084-DCF3308DAF74}". Per un progetto di Outlook, sostituire HostPackage="{D2B20FF5-A6E5-47E1-90E8-463C6860CB05}" con HostPackage="{20A848B8-E01F-4801-962E-25DB0FF57389}".

In alternativa, assicurarsi che i progetti migrati vengano aperti solo nei computer di sviluppo con Microsoft Office 2010 già installato.

Problema 5: Errori nei progetti aggiornati a livello di documento di Office 2003 che contengono controlli Windows Forms

Se si aggiorna un progetto a livello di documento di Microsoft Office 2003 e il documento contiene controlli Windows Forms, il progetto aggiornato potrebbe avere errori di compilazione o di runtime. Per evitare questo problema, installare Visual Studio 2005 Tools for Office Second Edition Runtime nel computer di sviluppo prima di aggiornare il progetto. Questa versione del runtime è disponibile come pacchetto ridistribuibile dall'Area download Microsoft in Microsoft Visual Studio 2005 Tools for Office Second Edition Runtime (VSTO 2005 SE) (x86).

Dopo aver completato l'aggiornamento del progetto, è possibile disinstallare Visual Studio 2005 Tools for Office Second Edition Runtime dal computer di sviluppo se non viene usato da altre soluzioni Office.

Problemi relativi all'uso delle finestre di progettazione

Quando si lavora con la finestra di progettazione di documenti, cartelle di lavoro o fogli di lavoro in progetti a livello di documento, potrebbero verificarsi i problemi seguenti.

Problema 1: Impossibile caricare correttamente la finestra di progettazione

Visual Studio non può aprire la finestra di progettazione nei casi seguenti:

Excel o Word è già aperto e visualizza una finestra di dialogo modale. Per aprire la finestra di progettazione, verificare se in Excel o Word è aperta una finestra di dialogo modale e chiudere tutte le finestre di dialogo modali aperte. Se non sono aperte finestre di dialogo modali, potrebbe essere necessaria un'altra azione prima che Excel o Word rispondano. Il progetto è attualmente sottoposto a debug. Per aprire la finestra di progettazione, arrestare o terminare il debug. Un componente aggiuntivo VSTO di Excel installato nel computer di sviluppo visualizza una finestra di dialogo all'avvio di Excel. Per creare un progetto a livello di documento di Excel, è innanzitutto necessario disabilitare il componente aggiuntivo VSTO. Problema 2: i controlli vengono visualizzati come rettangoli neri nel documento o nel foglio di lavoro

Se si raggruppano i controlli in un documento o in un foglio di lavoro, Visual Studio non riconosce più i controlli. I controlli raggruppati non sono accessibili nella finestra Proprietà e vengono visualizzati come rettangoli neri nel documento o nel foglio di lavoro. È necessario separare i controlli per ripristinare le relative funzionalità.

Problema 3: I controlli in un modello di Word non sono visibili in Visual Studio

Se si apre un modello di Word nella finestra di progettazione di Visual Studio, i controlli del modello che non sono in linea con il testo potrebbero non essere visibili. Questo avviene perché Visual Studio apre i modelli di Word in visualizzazione Normale . Per visualizzare i controlli, selezionare il menu Visualizza , scegliere Visualizzazione Di Microsoft Office Word e quindi selezionare Layout di stampa.

Problema 4: Il comando Inserisci ClipArt non esegue alcuna operazione nella finestra di progettazione di Visual Studio

Quando Excel o Word è aperto nella finestra di progettazione di Visual Studio, facendo clic sul pulsante ClipArt nella scheda Illustrazioni della barra multifunzione non viene aperto il riquadro attività ClipArt . Per aggiungere ClipArt, è necessario aprire la copia della cartella di lavoro o del documento presente nella cartella principale del progetto (non la copia presente nella cartella \bin ) all'esterno di Visual Studio, aggiungere la ClipArt e quindi salvare la cartella di lavoro o il documento.

Problemi durante la scrittura del codice

Quando si scrive codice nei progetti di Office, potrebbero verificarsi i problemi seguenti.

Problema 1: Alcuni eventi di oggetti di Office non sono accessibili quando si usa C #

In alcuni casi, è possibile che venga visualizzato un errore del compilatore simile al seguente quando si tenta di accedere a un particolare evento di un'istanza di un tipo di assembly di interoperabilità primario di Office in un progetto Visual C#.

Ambiguità tra 'Microsoft.Office.Interop.Excel._Application.NewWorkbook' e 'Microsoft.Office.Interop.Excel.AppEvents_Event.NewWorkbook'

Questo errore indica che si sta tentando di accedere a un evento con lo stesso nome di un'altra proprietà o metodo dell'oggetto. Per accedere all'evento, è necessario eseguire il cast dell'oggetto alla relativa interfaccia evento.

I tipi di pia di Office con eventi implementano due interfacce: un'interfaccia di base con tutte le proprietà e i metodi e un'interfaccia evento che contiene gli eventi esposti dall'oggetto . Queste interfacce eventi usano la convenzione di denominazione _EventsEvent, ad AppEvents_Event esempio e ApplicationEvents2_Event. Se non è possibile accedere a un evento che si prevede di trovare in un oggetto, eseguire il cast dell'oggetto alla relativa interfaccia evento.

Ad esempio, Application gli oggetti hanno un NewWorkbook evento e una NewWorkbook proprietà. Per gestire l'evento NewWorkbook , eseguire il cast di Application all'interfaccia AppEvents_Event . Nell'esempio di codice seguente viene illustrato come eseguire questa operazione in un progetto a livello di documento per Excel.

private void ThisWorkbook_Startup(object sender, System.EventArgs e) { ((Excel.AppEvents_Event)this.Application).NewWorkbook += new Excel.AppEvents_NewWorkbookEventHandler(ThisWorkbook_NewWorkbook); } void ThisWorkbook_NewWorkbook(Excel.Workbook Wb) { // Perform some work here. }

Per altre informazioni sulle interfacce degli eventi nelle funzionalità di interoperabilità personali di Office, vedere Panoramica delle classi e delle interfacce negli assembly di interoperabilità primari di Office.

Problema 2: Non è possibile fare riferimento alle classi pia di Office nei progetti destinati a .NET Framework 4 o .NET Framework 4.5

Nei progetti destinati a .NET Framework 4 o .NET Framework 4.5, il codice che fa riferimento a una classe definita in un ambiente di interoperabilità primario di Office non verrà compilato per impostazione predefinita. Le classi nelle autorità di interoperabilità personali usano la convenzione Class, ad DocumentClass esempio e WorkbookClass. Ad esempio, il codice seguente di un progetto di componente aggiuntivo VSTO di Word non verrà compilato.

C # VB Word.DocumentClass document = (Word.DocumentClass) Globals.ThisAddIn.Application.ActiveDocument; Dim document As Word.DocumentClass = Globals.ThisAddIn.Application.ActiveDocument

Questo codice genera gli errori di compilazione seguenti:

Visual Basic: "Il riferimento alla classe 'DocumentClass' non è consentito quando il relativo assembly è collegato tramite la modalità No-PIA. Visual C#: "Non è possibile incorporare il tipo di interoperabilità 'Microsoft.Office.Interop.Word.DocumentClass'. Usare invece l'interfaccia applicabile."

Per risolvere questo errore, modificare il codice in modo da fare riferimento all'interfaccia corrispondente. Ad esempio, anziché fare riferimento a un DocumentClass oggetto, fare riferimento a un'istanza dell'interfaccia Document .

C # VB Word.Document document = Globals.ThisAddIn.Application.ActiveDocument; Dim document As Word.Document = Globals.ThisAddIn.Application.ActiveDocument

Per impostazione predefinita, i progetti destinati a .NET Framework 4 o .NET Framework 4.5 incorporano automaticamente tutti i tipi di interoperabilità dalle FUNZIONALITÀ personali di Office. Questo errore di compilazione si verifica perché la funzionalità dei tipi di interoperabilità incorporati funziona solo con le interfacce, non con le classi. Per altre informazioni sulle interfacce e le classi nelle funzionalità di interoperabilità personali di Office, vedere Panoramica delle classi e delle interfacce negli assembly di interoperabilità primari di Office. Per altre informazioni sulla funzionalità dei tipi di interoperabilità incorporati nei progetti di Office, vedere Progettare e creare soluzioni Office.

Problema 3: I riferimenti alle classi di Office non vengono riconosciuti

Alcuni nomi di classi, ad esempio Application, si trovano in più spazi dei nomi, ad Microsoft.Office.Interop.Word esempio e System.Windows.Forms. Per questo motivo, l'istruzione Imports/using all'inizio dei modelli di progetto include una costante di qualificazione abbreviata, ad esempio:

C # VB using Word = Microsoft.Office.Interop.Word; Imports Word = Microsoft.Office.Interop.Word

Per questo utilizzo dell'istruzione Imports/using è necessario distinguere i riferimenti alle classi di Office con il qualificatore Word o Excel, ad esempio:

C # VB Word.Document doc; Dim doc As Word.Document

Si otterranno errori se si usa una dichiarazione non qualificata, ad esempio:

C # VB Document doc; // Class is ambiguous Dim doc As Document ' Class is ambiguous

Anche se è stato importato lo spazio dei nomi Word o Excel e si ha accesso a tutte le classi al suo interno, è necessario qualificare completamente tutti i tipi con Word o Excel per rimuovere l'ambiguità dello spazio dei nomi.

Problemi durante la compilazione di progetti

Quando si compilano progetti di Office, potrebbero verificarsi i problemi seguenti.

Problema 1: Non è possibile compilare un progetto a livello di documento basato su un documento con autorizzazioni limitate

Visual Studio non può compilare progetti a livello di documento se il documento dispone di autorizzazioni limitate. Se il progetto contiene un documento con autorizzazioni limitate, il progetto non verrà compilato e verrà visualizzato il messaggio seguente nella finestra Elenco errori .

Impossibile aggiungere la personalizzazione.

Se si vuole includere un documento con autorizzazioni limitate, usare un documento senza restrizioni durante lo sviluppo e la compilazione della soluzione. Applicare quindi le autorizzazioni limitate al documento nel percorso di pubblicazione, dopo aver pubblicato la soluzione.

Problema 2: Gli errori del compilatore si verificano dopo l'eliminazione di un controllo NamedRange

Se si elimina un NamedRange controllo da un foglio di lavoro che non è il foglio di lavoro attivo nella finestra di progettazione, il codice generato automaticamente potrebbe non essere rimosso dal progetto e potrebbero verificarsi errori del compilatore. Per assicurarsi che il codice venga rimosso, è consigliabile selezionare sempre il foglio di lavoro che contiene il NamedRange controllo per renderlo attivo prima di eliminare il controllo. Se il codice generato automaticamente non viene eliminato quando si elimina il controllo, è possibile fare in modo che la finestra di progettazione elimini il codice attivando il foglio di lavoro e apportando una modifica in modo che il foglio di lavoro venga contrassegnato come modificato. Quando si ricompila il progetto, il codice viene rimosso.

Problemi durante il debug di progetti

Quando si esegue il debug di progetti di Office, potrebbero verificarsi i problemi seguenti.

Problema 1: La richiesta di disinstallazione viene visualizzata quando si pubblica e si installa una soluzione nel computer di sviluppo

Quando si esegue il debug di una soluzione Office, potrebbe essere visualizzato l'errore seguente.

La personalizzazione non può essere installata perché è attualmente installata un'altra versione e non può essere aggiornata da questo percorso.

Questo errore indica che la soluzione Office è stata pubblicata e installata in precedenza nel computer di sviluppo. Per impedire la visualizzazione del messaggio, disinstallare la soluzione dall'elenco dei programmi installati nel computer prima di eseguire il debug della soluzione. In alternativa, è possibile creare un altro account utente nel computer di sviluppo per testare l'installazione della soluzione pubblicata.

Problema 2: I progetti a livello di documento creati nei percorsi di rete UNC non vengono eseguiti da Visual Studio

Se si crea un progetto a livello di documento per Excel o Word in un percorso di rete UNC, è necessario aggiungere il percorso del documento all'elenco dei percorsi attendibili in Excel o Word. In caso contrario, la personalizzazione non verrà caricata quando si tenta di eseguire o eseguire il debug del progetto in Visual Studio. Per altre informazioni sui percorsi attendibili, vedere Concedere attendibilità ai documenti.

Problema 3: I thread non vengono arrestati correttamente dopo il debug

I progetti di Office in Visual Studio seguono una convenzione di denominazione dei thread che consente al debugger di chiudere correttamente il programma. Se si creano thread nella soluzione, è necessario denominare ogni thread con il prefisso VSTA_ per assicurarsi che questi thread vengano gestiti correttamente quando si interrompe il debug. Ad esempio, è possibile impostare la Name proprietà di un thread che attende che un evento di rete VSTA_NetworkListener.

Problema 4: Non è possibile eseguire o eseguire il debug di alcuna soluzione Office nel computer di sviluppo

Se non è possibile eseguire o sviluppare un progetto di Office nel computer di sviluppo, è possibile che venga visualizzato il messaggio di errore seguente.

Impossibile caricare la personalizzazione perché non è stato possibile creare il dominio dell'applicazione.

Visual Studio usa Fusion, il caricatore di assembly .NET Framework, per memorizzare nella cache gli assembly prima di caricare le soluzioni Office. Assicurarsi che Visual Studio possa scrivere nella cache Fusion e riprovare. Per altre informazioni, vedere Assembly di copia shadow.

Problema 5: Errore durante l'arresto del debugger in un progetto a livello di documento dopo l'uso di Modifica e continuazione

Se si usa Modifica e continuazione per apportare modifiche al codice in un progetto a livello di documento per Excel o Word mentre il progetto è in modalità di interruzione, potrebbe essere visualizzata una finestra di dialogo con il messaggio di errore seguente se si arresta il debugger.

La chiusura del processo nello stato corrente può causare risultati indesiderati, tra cui la perdita di dati e l'instabilità del sistema.

Se si seleziona Sì o No nella finestra di dialogo, Visual Studio termina il processo di Excel o Word e arresta il debugger. Per interrompere il debug del progetto senza visualizzare questa finestra di dialogo, uscire direttamente da Excel o Word anziché arrestare il debugger in Visual Studio.

Riferimenti Risolvere i problemi relativi alle soluzioni office Risolvere i problemi di sicurezza della soluzione Office Risolvere i problemi di distribuzione della soluzione Office


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3